home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #2
/
Monster Media No. 2 (Monster Media)(1994).ISO
/
pcboard
/
imr_sx01.zip
/
SELXFER.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-05-21
|
5KB
|
266 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
String TSTRING002(20)
String TSTRING003(20)
String TSTRING004(20)
String STRING005
String TSTRING006(20)
String TSTRING007(20)
String STRING008
String STRING009
String STRING010
String STRING011
String STRING012
String STRING013
String STRING014
String STRING015
String STRING016
String STRING017
String STRING018
String STRING019
String STRING020
String STRING021
String STRING022
String TSTRING023(19)
;------------------------------------------------------------------------------
STRING005 = ReadLine(PCBDat(), 45)
TSTRING023(1) = 40
TSTRING023(2) = 67
TSTRING023(3) = 41
TSTRING023(4) = 111
TSTRING023(5) = 112
TSTRING023(6) = 121
TSTRING023(7) = 114
TSTRING023(8) = 105
TSTRING023(9) = 103
TSTRING023(10) = 104
TSTRING023(11) = 116
TSTRING023(12) = 32
TSTRING023(13) = 39
TSTRING023(14) = 57
TSTRING023(15) = 52
TSTRING023(16) = 32
TSTRING023(17) = 105
TSTRING023(18) = 77
TSTRING023(19) = 82
FOpen 1, PPEPath() + "SELXFER.CFG", 0, 0
FGet 1, STRING011
FGet 1, STRING012
FGet 1, STRING019
FGet 1, STRING008
FGet 1, STRING010
FGet 1, STRING009
FGet 1, STRING013
FGet 1, STRING014
FGet 1, STRING015
FGet 1, STRING016
FGet 1, STRING017
FGet 1, STRING018
FGet 1, STRING020
FGet 1, STRING021
FClose 1
INTEGER001 = 0
FOpen 1, PPEPath() + "SELXFER.PRT", 0, 0
:LABEL001
Inc INTEGER001
FGet 1, TSTRING002(INTEGER001)
If ((TSTRING002(INTEGER001) == "") || (TSTRING002(INTEGER001) == " ")) Goto LABEL002
FGet 1, TSTRING003(INTEGER001)
FGet 1, TSTRING004(INTEGER001)
Goto LABEL001
:LABEL002
INTEGER002 = INTEGER001 - 1
FClose 1
For INTEGER001 = 1 To INTEGER002
If ((Len(StripAtx(TSTRING003(INTEGER001))) > STRING015) || (Len(StripAtx(TSTRING004(INTEGER001))) > STRING016)) Goto LABEL006
TSTRING006(INTEGER001) = Space(STRING015 / 2 - Len(StripAtx(TSTRING003(INTEGER001))) / 2)
TSTRING006(INTEGER001) = TSTRING006(INTEGER001) + TSTRING003(INTEGER001)
TSTRING006(INTEGER001) = TSTRING006(INTEGER001) + Space(STRING015 - Len(StripAtx(TSTRING006(INTEGER001))))
TSTRING007(INTEGER001) = Space(STRING016 / 2 - Len(StripAtx(TSTRING004(INTEGER001))) / 2)
TSTRING007(INTEGER001) = TSTRING007(INTEGER001) + TSTRING004(INTEGER001)
TSTRING007(INTEGER001) = TSTRING007(INTEGER001) + Space(STRING016 - Len(StripAtx(TSTRING007(INTEGER001))))
Next
TSTRING006(INTEGER001) = Space(STRING015 / 2 - Len(StripAtx(STRING018)) / 2)
TSTRING006(INTEGER001) = TSTRING006(INTEGER001) + STRING018
TSTRING006(INTEGER001) = TSTRING006(INTEGER001) + Space(STRING015 - Len(StripAtx(TSTRING006(INTEGER001))))
If (Exist(PPEPath() + "SELXFER.PCB")) Then
AnsiPos 1, 1
DispFile PPEPath() + "SELXFER.PCB", 1
Endif
AnsiPos STRING013, STRING014
Print STRING008
For INTEGER001 = 1 To INTEGER002 + 1
AnsiPos STRING013, STRING014 + INTEGER001
Print STRING010
AnsiPos STRING013 + 1, STRING014 + INTEGER001
Print STRING012 + TSTRING006(INTEGER001)
AnsiPos STRING013 + 1 + STRING015, STRING014 + INTEGER001
Print STRING019 + STRING017
AnsiPos STRING013 + 1 + STRING015 + 1, STRING014 + INTEGER001
Print STRING019 + TSTRING007(INTEGER001)
Next
AnsiPos STRING013, STRING014 + INTEGER001
PrintLn STRING009
INTEGER004 = 1
INTEGER003 = 1
AnsiPos STRING013 + 1, STRING014 + INTEGER003
Print STRING011 + TSTRING006(INTEGER003)
:LABEL003
STRING022 = ""
STRING022 = Inkey()
If ((STRING022 == "") || (STRING022 == " ")) Goto LABEL003
If (STRING022 == Chr(13)) Goto LABEL004
If ((Upper(STRING022) == "Z") && (INTEGER003 < INTEGER002 + 1)) Inc INTEGER003
If ((Upper(STRING022) == "A") && (INTEGER003 > 1)) Dec INTEGER003
If ((STRING022 == "") && (INTEGER003 < INTEGER002 + 1)) Inc INTEGER003
If ((STRING022 == "") && (INTEGER003 > 1)) Dec INTEGER003
If ((STRING022 == "DOWN") && (INTEGER003 < INTEGER002 + 1)) Inc INTEGER003
If ((STRING022 == "UP") && (INTEGER003 > 1)) Dec INTEGER003
If (INTEGER003 <> INTEGER004) Then
AnsiPos STRING013 + 1, STRING014 + INTEGER004
Print STRING012 + TSTRING006(INTEGER004)
AnsiPos STRING013 + 1, STRING014 + INTEGER003
Print STRING011 + TSTRING006(INTEGER003)
INTEGER004 = INTEGER003
Endif
Goto LABEL003
:LABEL004
If (INTEGER003 == INTEGER002 + 1) Goto LABEL005
GetUser
U_Trans = TSTRING002(INTEGER003)
PutUser
AnsiPos 1, 22
OpText StripAtx(TSTRING003(INTEGER003))
PrintLn STRING020
Gosub LABEL007
End
:LABEL005
AnsiPos 1, 22
PrintLn STRING021
Gosub LABEL007
End
:LABEL006
PrintLn ""
PrintLn "You have specified a row length thats smaller than"
PrintLn "the length of a variable to be in that row . please remedy"
End
:LABEL007
Print "@POFF@"
Color 3
Print "["
Color 11
For INTEGER001 = 1 To 19
Print Chr(TSTRING023(INTEGER001))
Next
Color 3
Print "]"
ClrEol
Delay 8
Print "@PON@"
Return
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 3 End
; 1 ClrEol
; 3 Color
; 15 Goto
; 43 Let
; 13 Print
; 6 PrintLn
; 16 If
; 1 DispFile
; 2 FOpen
; 2 FClose
; 17 FGet
; 1 GetUser
; 1 PutUser
; 2 Gosub
; 1 Return
; 1 Delay
; 4 Inc
; 3 Dec
; 1 OpText
; 12 AnsiPos
;
;
; ■ Functions used :
;
; 6 /
; 42 +
; 7 -
; 12 ==
; 1 <>
; 6 <
; 3 <=
; 5 >
; 6 >=
; 5 !
; 12 &&
; 6 ||
; 8 Len(
; 2 Upper()
; 6 Space()
; 2 Chr()
; 9 StripAtx()
; 1 Inkey()
; 1 PCBDat()
; 4 PPEPath()
; 1 ReadLine()
; 1 Exist()
;
;------------------------------------------------------------------------------
;
; Analysis flags : Wd
;
; W - Write user ■ 5
; Program writes a user record. Although this may be normal for a
; User Editor, it may also be a way to modify an account level.
; ■ Search for : PUTUSER
;
; d - Access PCBOARD.DAT ■ 2
; Program gets the full pathname to PCBOARD.DAT, this may be usefull
; for many PPE so they can find various informations on the system
; (system paths, max number of lines in messages, ...) but it may also
; be a way to gather vital informations.
; ■ Search for : PCBDAT()
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 3 For/Next
; 0 While/EndWhile
; 2 If/Then or If/Then/Else
; 0 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------